The present application is directed to maintaining beliefs in propositions in conjunction with a reasoning system. A reasoning system is able to infer logical consequences from a set of asserted facts or axioms. The inference rules are commonly specified by means of an ontology language, and often a description language. Many reasoners use first-order predicate logic to perform reasoning; inference commonly proceeds by forward chaining and backward chaining. A reasoning system may include an inference engine, a truth maintenance system (TMS), and a knowledge base (KB).
An example of an existing reasoning system is known as Cyc, from CycCorp, Inc. of Austin, Tex. Cyc is an artificial intelligence (AI) project that attempts to assemble a comprehensive ontology and database of everyday common sense knowledge, with the goal of enabling AI applications to perform human-like reasoning. The project was started in 1984 by Doug Lenat as part of Microelectronics and Computer Technology Corporation. The name “Cyc” (from “encyclopedia”, pronounced like psych) is a registered trademark owned by Cycorp, Inc. The original knowledge base is proprietary, but a smaller version of the knowledge base, intended to establish a common vocabulary for automatic reasoning, was released as OpenCyc under an open source license. More recently, Cyc has been made available to AI researchers under a research-purposes license as ResearchCyc.
Typical pieces of knowledge represented in the Cyc database are “Every tree is a plant” and “Plants die eventually”. When asked whether trees die, the inference engine can draw the obvious conclusion and answer the question correctly. The Cyc KB contains over a million human-defined assertions, rules or common sense ideas. These are formulated in the language CycL, which is based on predicate calculus and has a syntax similar to that of the Lisp programming language.
An inference engine tries to derive answers from a KB. The inference engine is the “brain” that artificial intelligence systems use to reason about the information in the KB for the ultimate purpose of formulating new conclusions.
A knowledge base (KB) is a special kind of database for knowledge management. It provides the means for the computerized collection, organization, and retrieval of knowledge.
A truth maintenance system (TMS) is a knowledge representation method for representing both beliefs and their dependencies. The name truth maintenance is due to the ability of these systems to maintain and restore consistency. Many kinds of TMSs exist. Two major types are single-context and multi-context truth maintenance. In single context systems, consistency is maintained among all facts (database). Multi-context systems allow consistency to be relevant to a subset of facts (a context) according to the history of logical inference. This is achieved by tagging each fact or deduction with its logical history. Multi-agent TMSs perform truth maintenance across multiple memories which may be located on different machines.
As KBs become larger and larger, it is desirable to improve the performance of intermediate knowledge representations of the KB to improve the performance of the reasoning system, reduce the storage footprint, or both.